Information Centric Networking (ICN) is a new networking paradigm. Content Centric Networking (CCN) is one approach within the ICN paradigm. An example of ICN paradigm, such as the CCN and Named Data Networking (NDN) is described below, nevertheless the ICN paradigm is not limited to that approach.
NDN which is related to CCN, content-based networking, data-oriented networking or ICN, is a new Internet architecture inspired by years of empirical research into network usage and a growing awareness of unsolved problems in contemporary internet architectures like the Internet Protocol (IP). This will have far-reaching implications for how people design, develop, deploy, and use networks and applications.
Instead of focusing on connecting communicating endpoints as traditional networking protocols, such as IP do, ICN focuses on a content object that should be retrieved. In ICN networking messages are routed based on the globally unique names of content objects rather than on endpoint addresses referring to physical or virtual machines.
In CCN a Content Object is retrieved by issuing an Interest message to the network comprising the name of the Content Object. Such a message is routed by the network towards a publisher of the object. CCN nodes along a path towards the source of the object check if they have a cached copy of the object. If so they will respond to the Interest message with a Data message containing the requested Content Object and then the Interest message will not be propagated any further towards a publisher of the object. The routing of the Interest message is helped by the name of the Content Object being a structured name, similar to domain names, but with richer syntax. Routing nodes maintain a Forwarding Information Base (FIB) i.e. the interface or face, about where to forward which name or name prefix. The routing nodes along the path of the Interest message keep a record of the Interest messages they have forwarded such as the face where it came from and what Content Object it was naming, in their Pending Interest Table (PIT). If other Interest messages to the same name of Content Object arrive to the routing node, the routing node does not forward them, just records them in the PIT besides the entry for this name of Content Object; this is called Interest aggregation. In this way the PIT entries for the same name may form a tree in the network with receivers at the leaves. FIG. 1 depicts an overview of an ICN node structure and FIG. 2 depicts an ICN network structure.
FIG. 3 illustrates aspects of CCN/ICN including prefix routing, caching at ICN/CCN nodes (CS), and optimized delivery of cached objects. When an Interest message sent from a communication device A reaches an endpoint B or a routing node C1-C6, i.e. ICN nodes that are routing in this specific scenario, having a copy of the Content Object, maybe cached, the Interest message is responded to with a Data message, which is propagated backwards from C6-C1 along the path the Interest message took until it reaches the communication device A. The backward path C6-C1 is learned from the entries the Interest message left in the PIT of the routers C1-C6 along the path. If there were multiple Interests arriving at a router for this name, the Data message containing the Content Object is replicated towards each respective face and/or direction, where the Interest messages came from. After forwarding a Content Object matching a pending Interest, the routing nodes delete the corresponding entry in the PIT, thus these entries are expected to be short-lived. When the original endpoint(s) generating the Interest message(s) receive the Content Object the transaction is considered closed.
The request aggregation mechanism forms a hierarchical tree in the ICN network where request packets are aggregated and response packets are disaggregated at each level of the tree. This allows ICN networks to scale with increasing number of clients.
One benefit of ICN is in distributing the same information to multiple places in the network. Since routing nodes C1-C6 may cache Content Objects besides forwarding them, Content Objects need not traverse through the entire network every time someone becomes interested in them, a local cached copy suffices. This means that if an Interest message sent from a communication device D via the routing node C7 reaches any of the routing nodes C1-C6, routing node C3 in this example, having a copy of the Content Object, maybe cached, the Interest message is responded to with a Data message. It should be noted that an ICN node is both doing interest routing and a request servicing so the routing nodes C1-C6 are ICN nodes not specific routing nodes.
Another advantage with ICN is the aggregation of Interest messages, in the case of a flash crowd event where suddenly thousands of endpoints are requesting the same content the publisher of the object will only be reached by one request for the content, all other requests will be served from the caches of routing nodes along the path towards the source.
Referring again to FIG. 2, Currently in an ICN system multiple consumers, Consumer 1-N, express their interest in certain pieces of content by sending interest requests to an ICN Entity (ICNE) also known as ICN routers, ICN network nodes or CCN nodes if the CCN approach is followed. The interest requests comprises a content name which may be in form of arbitrary series of bytes that may exhibit a naming structure, content metadata whose structure is currently undefined, eventual Payload and Validation parts.
Producers or sources or publishers on the other hand advertise the content they provide to the ICNE, which pulls the content when it is actually requested by at least one consumer.
The ICNE does a simple interest aggregation such as detecting the same interests based on only the content name with varying types of semantics: a piece of content is the same as another one if it has exactly the same name, strict content name matching, or if the series of bytes are similar with some metric e.g. same subsets of initial bytes, name prefix matching for example. The interests may be received and stored by the ICNE even before the content is actually generated in other words there is not requirement on the existence of the content for the interests to be stored. Along these lines the producer could be hinted based on consumer interests to create the missing content.
Even though this is an efficient networking, there is a need to improve it.